import java.lang.reflect.Modifier;

public class PersonTest1 {
    public static void main(String[] args) {
    Class clz= Person.class;
    String fullName=clz.getName();
    String simpleName=clz.getSimpleName();
        System.out.println("以下是"+fullName+"基本信息");
        System.out.println("-----------------------");

        Package pkg=clz.getPackage();
        System.out.println(simpleName+"定义在"+pkg.getName()+"包中");
        System.out.println("-----------------------");

        Class superClass=clz.getSuperclass();
        System.out.println(simpleName+"类的超类是:"+superClass.getName());

        Class[]interfaces=clz.getInterfaces();
        System.out.println(simpleName+"类所实现的接口:");
        for (Class c:interfaces)
            System.out.println("\t"+c.getName());
        System.out.println("-----------------------");

        int modifier=clz.getModifiers();
        System.out.println(simpleName+"类的修饰符");
        if ((modifier & Modifier.PUBLIC)==Modifier.PUBLIC)
            System.out.println("\t访问修饰符是:public ");
        else
            System.out.println("\t访问修饰符是:default(package)");
        if ((modifier&Modifier.FINAL)==Modifier.FINAL)
            System.out.println("\t访问修饰符是:final的");
        if ((modifier&Modifier.ABSTRACT)==Modifier.ABSTRACT)
            System.out.println("\t这是一个抽象类");
        if ((modifier&Modifier.INTERFACE)==Modifier.INTERFACE)
            System.out.println("\t这是一个接口");
        System.out.println("----------------------");
    }
}
